Мы про запрос с Вами говорили в шагах.
Шаг 218 - От перебора документов к
запросу.
Шаг 219 - От перебора
документов к запросу дальше.
Из этих шагов понятно что запрос хорош для получения сводный данный по суммам. Заменять перебор запросом оправданно только в редких случаях. Давайте попробуем понять как все это работает. Нам сейчас важна группировка. Итак сгруппируем по поставщику услуг ( перевозчик в данном контексте).
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать)
|Период с ВыбНачПериода по ВыбКонПериода;
|Поставщик = Документ.ПеревозкаТоплива.Поставщик;
|СуммаОбщая = Документ.ПеревозкаТоплива.СуммаОбщая;
|Группировка Поставщик;
|"//}}ЗАПРОС
;
// Если ошибка в запросе, то выход из процедуры
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
Возврат;
КонецЕсли;
// Подготовка к заполнению выходных форм данными запроса
Таб = СоздатьОбъект("Таблица");
Таб.ИсходнаяТаблица("Сформировать");
// Заполнение полей "Заголовок"
Пока Запрос.Группировка("Поставщик") = 1 Цикл
Таб.ВывестиСекцию("Секция_1");
КонецЦикла;
В данном случае мы получим суммы по поставщику.

А вот если сгруппировать по сумме то мы получим более развернутый отчет. Каждый документ будет отражен суммой.
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать)
|Период с ВыбНачПериода по ВыбКонПериода;
|Поставщик = Документ.ПеревозкаТоплива.Поставщик;
|СуммаОбщая = Документ.ПеревозкаТоплива.СуммаОбщая;
|Группировка СуммаОбщая;
|"//}}ЗАПРОС
;
........
Пока Запрос.Группировка("СуммаОбщая") = 1 Цикл
Таб.ВывестиСекцию("Секция_1");
КонецЦикла;
Смотрим.
